home *** CD-ROM | disk | FTP | other *** search
- Mac Spectacle - Documentation - 17.Feb.95 KIO !
- -------------------------------------------------------
-
- Mac Spectacle is a software emulator of the Sinclair ZX Spectrum,
- running on most Macintosh computers.
-
-
- Contents
- --------
-
- ** System requirements
- ** Imortant note!
- ** Instructions
- ** Bug report
- ** Credits
-
-
- System requirements
- -------------------
-
- Mac Spectacle runs on any Macintosh computer that meets the
- following requirements:
- mc68020 or higher; PPC is ok
- System 7.0 or higher
- color Quickdraw and Quicktime
-
- In the actual version 8bit indexed color, 8 bit greyscale or 16bit true color
- video is recommended. In 1, 2, 4 and 32bit mode the screen update and window refresh
- is very slow. When the ZX Spectrum window is not the top window or when it is not
- entirely within the screen, screen update and refresh is slow in any screen mode.
- For some reason, Notebooks go to sleep mode, even if the emulator is running.
-
-
- IMPORTANT NOTE
- --------------
-
- NEVER kill the emulator using control+option+escape except really nothing
- else works, for this will leave a ticker routine installed and you will
- potentially not even manage to shut down your Macintosh properly.
-
- The emulator is running very stable. It only crashed my Mac when i was
- testing new routines.
-
-
- Instructions
- ------------
-
- The menus:
-
- Apple
- About ... Shows some legal notes and a photo of me
- Keyboard Toggles the display of a ZX Spectrum keyboard on/off
-
- File
- Load core loads a .SNA or .Z80 snapshot file
- Save core saves a .SNA or .Z80 snapshot file
- Restart reloads ROM and does a reset
- Hold suspends the Z80 CPU
- Resume resumes the Z80 CPU
- Insert tape open a tape file for subsequent LOAD ""
- Eject tape closes an open tape file
- Save picture saves a pict file (not a bitmap!)
- Save preferences Saves some settings and window locations as preferences
- Quit quits application
-
- Display
- 1:1 tiny screen
- 2:1 double size screen, only a little bit slower
- Refresh 1/25 screen update 25 times a second (slows down emulation)
- ...
- Refresh 6/25 screen update only 25/6 times a second (fastest emulation)
-
- Options
- Basic keyboard Remapping of most keys, roll over supression
- Game keyboard Native Specci keyboard, physical layout
- International Menus, messages etc. in English
- German Menus, messages etc. in German
-
- Debugger
- ( Trace mode ) Extended debugging version only
- Logfile Submenu: verbosity of logfile messages
- Console Submenu: verbosity of console messages
- ( Trigger NMI ) Trigger non maskable interrupt
- ( Trigger interrupt ) For debugging purpose only
- ( Trigger Reset ) Better use Restart from File menu
- ( Clear profiles ) Extended debugging version only
- ( List ... ) Extended debugging version only
- ( Map ... ) Extended debugging version only
- ( Show 1st ... ) Extended debugging version only
- ( ***test*** ) For debugging purpose only
-
- Windows
- Console Window for all messages, errors, notes etc.
- ZX Spectrum The window you are mostly interested in
- Tape recorder Window with some controls to handle tape files
- Keyboard Highres display of a ZX Spectrum keyboard
-
-
- Loading and saving snapshots:
-
- .SNA and .Z80 files may be launched by drag&drop, or if they were created
- by Mac Spectacle by double clicking, or from the File menu. Snapshots
- only contain information about the ZX Spectrum side, not about any
- settings of the emulator. So window size, location or keyboard setting
- aren't affected. If the snap doesn't launch, the Z80 CPU may be halted,
- try 'Resume' or 'Restart' from the File menu. Snapshots may be saved at
- any time from the File menu. If the file name ends on ".z80" or ".sna"
- then the appropriate format is choosen for saving. Otherwise the save
- routine defaults to the old file format (if a file is overwritten)
- or to .Z80 file format (if a new file is created).
-
- Loading tapes:
-
- .tape files represent the original program tapes. They may be opened by
- drag&drop or by double click or from the file menu. A small window
- opens, showing some tape recorder controls. The window is not topped,
- to leave the ZX Spectrum window in front. You normally don't need to
- access it. If you type LOAD "" (you know, you have to type j"" if you
- have selected basic keyboard mapping or even <j> <option+p> <option+p>
- if you have selected the game keyboard) the emulator reads from this
- file. If you type LOAD"" without a tape open, you will be prompted. If
- you open the tape recorder window from the windows menu, you will be
- prompted too.
-
-
- Bug report
- ----------
-
- Not yet supported:
-
- Sound
- Writing to any location on a tape; erasing tapes
- Writing .scr file format for screenshots
- versions higher than ZX Spectrum 48k
- Joystick (i think of Kempston)
- Trace mode
- PPC native code
- Fast 1, 2, 4 and 32bit screen refresh
- Faster refresh for windows "not in optimal position"
-
- Not implemented:
-
- INI, IND, INIR, INDR
- OUTI, OUTD, OTIR, OTDR
- IM0 with multi-byte instructions
- exact timing of Z80 instructions
- exact incrementation of R
- exact implementation of DAA
- Some undocumented behaviour of the Z80 CPU
-
- Errors/known problems:
-
- There ARE errors in the Z80 emulation. At least ONE.
- ATIC ATAC sometimes doesn't realize the player wants to leave a room
- FRED freezes when you find a map.
- The Basic interpreter writes garbage to some of the first characters,
- when you edit Basic lines or scroll through a Basic program.
- But most games run good (including ATIC ATAC)
- I appreciate anybody making suggestions on the wrong emulated opcodes!
-
- DAA handling is lossy, that means, it may fail. I do not support the
- corresponding flags, i do it my way.
-
- I do a good job keeping all pointers inside the Z80 core. But there
- are some conditions that are not checked:
- * SP may be incremented or decremented beyond RAM and ROM.
- * overwriting the ROM
-
- If the ZX Spectrum window is not the frontmost and not fully inside
- the screen, i delegate the task to redraw the window to QuickDraw.
- Then screen update and window refresh is slow.
-
- Secondary screens are not handled correctly. Test it, you'll see it.
-
- I've not yet found the right way to swich off the mouse arrow.
-
- Sound output slows down the emulation. If you think Mac Spectacle
- hangs at the beginning of games or new levels, it is most probably
- playing some sound.
-
-
- Credits
- -------
-
- Mac Spectacle contains the original ZX Spectrum 1982 ROM in it's resource
- fork. The ROM is copyrighted and the owner of the copyright is AMSTRAD,
- who has taken over Sinclair Inc.. Fortunately AMSTARD has stated publically,
- that the unmodified ZX Spectrum ROM may be distributed with any software
- emulator of the ZX Spectrum. I think, we have to thank them for this.
-
- In addition, i have included two program tapes for demonstration purpose,
- "pool" is a billard simulation and "Lords of Midnight" a fantasy role
- playing game, based on some Tolkien stuff. Both are still copyrighted,
- but permission to copy is granted by their respective copyright holders.
- I have checked this mainly by looking them up at ftp.nvg.unit.no.
- Credits go to Mike Singleton and Mike Lamb.
-
- The picture of the ZX Spectrum keyboard layout was designed and is
- copyrighted by Bo Lindbergh. Thanks for his permission to use it in
- Mac Spectacle.
-
- Special thanks to Gerton Lunter, who has collected a great amount of
- Z80 and ZX Spectrum specialities which only Z80 emulator programmers
- must know about.
-
- ... KIO !
-